<?php if ( ! defined("BASEPATH")) exit("No direct script access allowed");

class Contas_pagar_parcela_model extends CI_Model {
		
	public function do_insert($dados=NULL, $redir=TRUE){
		if ($dados != NULL):
			$this->db->insert('contas_pagar_parcela', $dados);
			if ($this->db->affected_rows()>0):
				auditoria('Inclusão de Contas a Pagar', 'Nova Conta a Pagar cadastrada no sistema');
			endif;
		endif;
	}
	
	public function do_update($dados=NULL, $condicao=NULL, $redir=TRUE){
		if ($dados != NULL && is_array($condicao)):
			$this->db->update('contas_pagar_parcela', $dados, $condicao);
			if ($this->db->affected_rows()>0):
				//auditoria('Alteração de Contas a Pagar', 'Conta a Pagar com o id "'.$condicao['id'].'" foram alteradas');
				set_msg('msgok', 'Alteração efetuada com sucesso', 'sucesso');
			else:
				//set_msg('msgerro', 'Erro ao atualizar dados', 'erro');
			endif;
			//if ($redir) redirect(current_url());
		endif;
	}
	
	public function do_delete($condicao=NULL, $redir=TRUE){
		if ($condicao != NULL && is_array($condicao)):
			$this->db->delete('contas_pagar_parcela', $condicao);
			if ($this->db->affected_rows()>0):
				auditoria('Exclusão de Contas a Pagar', 'Contas a Pagar com o id "'.$condicao['id'].'" foram excluidas');
				set_msg('msgok', 'Registro excluído com sucesso', 'sucesso');
			else:
				set_msg('msgerro', 'Erro ao excluir registro', 'erro');
			endif;
			if ($redir) redirect(current_url());
		endif;
	}
	
	public function get_all(){
		$this->db->where_not_in('situacao', 'Cancelado');
		return $this->db->get('contas_pagar_parcela');
	}
	
	public function get_ultimo(){
		$this->db->order_by('id', 'DESC');
		$this->db->limit(1);
		return $this->db->get('contas_pagar_parcela');
	}

	public function get_byid($id=NULL, $campo = 'id'){
		if ($id != NULL):
			$this->db->where($campo, $id);
			return $this->db->get('contas_pagar_parcela');
		else:
			return FALSE;
		endif;
	}
	
	public function get_by_parcela($id=NULL, $campo = 'id', $id2=NULL, $campo2 = 'id'){
		if ($id != NULL):
			$this->db->where($campo, $id);
			$this->db->where($campo2, $id2);
			$this->db->where_not_in('situacao', 'Cancelado');
			return $this->db->get('contas_pagar_parcela');
		else:
			return FALSE;
		endif;
	}
	
	public function get_by_data($data=NULL){
		if ($data != NULL):
			$this->db->where('vencimento', $data);
			$this->db->where('situacao', 'Pendente');
			$this->db->or_where('situacao', 'Atrasada');
			return $this->db->get('contas_pagar_parcela');
		else:
			return FALSE;
		endif;
	}
	
	public function atualiza_status_parcela($atual){
		$this->db->where('situacao', 'Pendente');
		$this->db->where('vencimento <', $atual);
		return $this->db->get('contas_pagar_parcela');
	}
		
}

/* End of file contas_pagar_parcela_model.php */
/* Location: ./application/models/contas_pagar_parcela_model.php */